Generally, a cloud service is a resource that is delivered to customers by a service provider via the internet. A cloud service may in turn consume resources provided by another cloud service, such as data files or other resources stored by a cloud storage provider. It is desirable to create scheduled and/or manual backups of these resources. The created backups are preferably consistent from the perspective of the consuming cloud service. Consistent backups facilitate restoration of the cloud service to a known good state.
Conventional backup systems can create backups of cloud-based resources using snapshots. However, these systems do not effectively integrate with cloud services consuming those cloud resources. For example, conventional systems fail to provide an efficient mechanism for integrating operation of a cloud service with a backup or restore process. Consequently, it may be difficult to ensure that the resource is brought to a consistent state before creating a backup, that service activity on the resource is paused during a restore, and/or that the service performs needed post-processing after the restore completes.